Account Entities
These interfaces are used by the Account adapter and encapsulate data objects used by Epicenter Account API.
Response body
AccountReadView represents a data object returned by the Account API endpoints.
interface AccountReadView {
name: string;
objectType: string;
}
Properties
name(string) – A descriptive name for the account.objectType(string) – Identifies this as an admin's personal or a team account.
Create account request
AccountCreateView represents the object required to create a new account.
interface AccountCreateView {
adminKey: string;
name: string;
shortName: string;
sharedSecret?: string;
workerPartition?: string;
active?: boolean;
}
Properties
adminKey(string) – Identifies the admin who is creating the account. GUID.name(string) – A descriptive name for the account.shortName(string) – The account short name. A unique identifier for the account. Used in the dashboard and API endpoint URLs.sharedSecret(string, optional) – Set by the account owner and used for account-wide encryption.workerPartition(string, optional) – The compute cluster used for the simulations.active(boolean, optional) – Whether the account is active.
active and workerPartition are anointed parameters that can only be set with SYSTEM permissions. Leave them blank.
Creating a personal account
Use the PersonalAccountCreateView interface when creating a personal account for an admin.
Extends AccountCreateView.
interface PersonalAccountCreateView extends AccountCreateView {
objectType: 'personal';
}
Properties
objectType(string, fixed: 'personal') – Identifies this as an admin's personal account.
Creating a team account
Use the TeamAccountCreateView interface when creating a team account.
Extends AccountCreateView.
interface TeamAccountCreateView extends AccountCreateView {
objectType: 'team';
billingInterval: string;
subscriptionPlan: string;
}
Properties
objectType(string, fixed: 'team') – Identifies this as a team account.billingInterval(string) – The billing period.subscriptionPlan(string) – The license type. Controls what features you have access to.
Update an account request
AccountUpdateView contains the data for updating an account.
interface AccountUpdateView {
name?: string;
workerPartition?: string;
active?: boolean;
}
Properties
name(string, optional) – A descriptive name for the account.workerPartition(string, optional) – The compute cluster used for the simulations.active(boolean, optional) – Whether the account is active.
active and workerPartition are anointed parameters that can only be set with SYSTEM permissions. Leave them blank.
Updating a personal account
Use PersonalAccountUpdateView when updating an admin's personal account details.
Extends AccountUpdateView.
interface PersonalAccountUpdateView extends AccountUpdateView {
objectType: 'personal';
}
Properties
objectType(string, fixed: 'personal') – Identifies this as an admin's personal account.
Updating a team account
Use TeamAccountUpdateView when updating the details of a team account.
Extends AccountUpdateView.
interface TeamAccountUpdateView extends AccountUpdateView {
objectType: 'team';
billingInterval?: string;
}
Properties
objectType(string, fixed: 'team') – Identifies this as a team account.billingInterval(string, optional) – Updates the billing period for the Epicenter account.